import { useAppStore } from '@/stores'

const appStore = useAppStore()

/**
 * 根据code和value返回字典标签
 * @param code 字典编码
 * @param value 字典value
 * @returns
 */
export function useDictLabel(code, value, defaultLabel = '-') {
  return useDict(code)[value]?.label || defaultLabel
}

/**
 * 根据code返回字典
 * 数据格式为map
 * @param code 字典编码
 * @returns
 */
export function useDict(code) {
  return appStore.dictMap[code] || {}
}

/**
 * 根据code返回字典
 * 数据格式为options列表
 * @param code 字典编码
 * @returns
 */
export function useDictOptions(code) {
  return appStore.dictList[code] || []
}

/**
 * 根据code返回字典
 * 数据格式为options列表
 * @param code 字典编码
 * @returns
 */
export function useDictFilterOptions(code) {
  return (appStore.dictList[code] || []).map((item) => {
    return { text: item.label, value: item.value }
  })
}
